Persistent configuration in a multiple processor repairable system

ABSTRACT

A control system having a host computer and one or more control computers connected to an interface for control of a process or machinery. The control computers are capable of automatically initiated network address assignment and configuration when powered up after installation. The network address is based on a location identifier situated in the interface that corresponds to a specific connection thereof to the control computer. The control computer reads the location identifier from the interface and requests a network address. The host computer assigns the network address based on the location identifier. Configuration of the control computer then proceeds. The procedure applies to newly installed control computers, whether first time installment or a replacement for a failed control computer.

BACKGROUND OF INVENTION

1. Field of the Invention

The present disclosure relates to processing systems. More particularly, the present disclosure relates to multiple computers of a control system that acquire signals from and/or supply signals to a machine or a process being monitored or controlled and to methods for configuring the computers.

2. Discussion of the Background Art

Repair of a multiple processor system typically includes steps for the physical replacement of a failed processor and subsequent re-establishment of required configuration information. The configuration information typically provides customization of the software running on each processor. Human interaction typically is needed to determine the correct configuration information to load into the system. The human interaction may be through a hardware jumper selection, the operation of a configuration program, or other methods. In any of these methods, the re-establishment of the configuration information may impede the repair process. For example, the system may be shut down or be unusable while a replacement processor is being substituted for the failed processor. Thus, a problem to be solved is how to re-establish the correct configuration information in the replacement processor.

Accordingly, there is a continuing desire for a multiple processor system in which a processor can be configured without the need for human intervention.

Also, there is a desire for continued operation of a multiple processor system during the time that a failed processor is being removed and a replacement processor is being installed.

BRIEF DESCRIPTION OF THE INVENTION

The disclosure describes a technical solution to the problem of how to re-establish the correct configuration in a replacement computer. The technical solution is an arrangement by which the configuration data, once initially established, is saved based on a relationship of a connecting location of a failed computer to an interface. A replacement computer reads a unique identifier associated with the location, which is used to access the configuration data. This solution results in an automated configuration process for the replacement computer and eliminates the possibility of a system failure due to improper configuration of a replacement computer.

A first method embodiment configures a first computer by obtaining a location identifier from an interface that is connected to the first computer. The location identifier is provided to a second computer. The first computer is configured with configuration data provided by the second computer, the configuration data including a network address for the first computer that is related to the location identifier.

A second method embodiment configures a control computer, by assigning a network address to the control computer based on a location identifier of a connection of the control computer to an interface with a controlled and/or monitored process or machinery. A relationship of the location identifier with the network and a configuration data is saved. The configuration data is provided to the control computer.

A control computer embodiment is for a control system that includes a host computer and an interface arranged to control a process or one or more machines. The control computer embodiment includes at least a first program instruction that causes a processor of the control computer to obtain a location identifier from the interface. At least a second program instruction causes the processor to provide the location identifier to the host computer. At least a third program instruction causes the processor to configures the control computer with configuration data provided by the host computer, wherein the configuration data includes a network address for the control computer that is related to the location identifier.

A host computer embodiment is for a control system that includes a control computer and an interface arranged to control a process or one or more machines. The host computer embodiment includes at least a first program instruction that causes the processor to assign a network address to the control computer based on a location identifier of a connection of the control computer to the interface. At least a second program instruction causes the processor to save a relationship of the location identifier with the network and a configuration data. At least a third program instruction causes the processor to provides the configuration data to the control computer.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an exemplary embodiment of a multi-computer control system;

FIG. 2 is a block diagram of an alternative network between a control computer and the host computer of the control system of FIG. 1;

FIG. 3 is a block diagram of the control computer of FIG. 1;

FIG. 4 is a flow diagram of the configurator of the control computer of FIG. 3;

FIG. 5 is a block diagram of the host computer of the control system of FIG. 1; and

FIG. 6 is a flow diagram of the configurator of the host computer of FIG. 5.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring to the drawings and in particular to FIG. 1, a control system is illustrated by way of reference numeral 20. Control system 20 includes a host computer 22 and one or more channels 24 and 26 that are arranged to monitor and/or control a process or one or more machines 28. Although only two channels are shown, it will be apparent to those skilled in the art that more channels can be used. As each of the channels 24 and 26 are substantially identical, only channel 24 will be described in detail.

Channel 24 includes an interface 30, control computers 32, 34 and 36 and communication links 38, 40 and 42. Interface 30 includes one or more connections to process or machine 28 and redundant connections to control computers 32, 34 and 36. For example, the signals being monitored by interface 30 are transferred via three paths in FIG. 1. It will be apparent to those skilled in the art that more or less paths may be used. Interface 30, for example, may be a terminal board that accepts wiring from process or machine 28 and electrically connects to one or more control computers 32, 34 or 36.

Interface 30 includes a unique electronic identifier (ID) 44 for the connection to control computer 32, a unique electronic identifier (ID) 46 for the connection to control computer 36 and a unique electronic identifier (ID) 48 for the connection to control computer 38. Electronic IDs 44, 46 and 48 may be provided simply by coded wiring, a memory (e.g., a ROM, an EPROM) and the like.

Signals acquired by interface 30 are conveyed to control computers 32, 34 and 36, which condition the signals and process them for transfer to host computer 22. For example, each of the control computers 32, 34 and 36 may include an analog to digital converter that converts analog signals to digital form for processing and transfer to host computer 22.

Communication links 38, 40 and 42 provide independent signal paths between host computer 22 and each of the control computers 32, 34 and 36. For example, communication links 38, 40 and 42 may be implemented in an Ethernet topology and protocol, although other topologies and protocols may be used.

Referring to FIG. 2, redundant communication links may also be used. Thus, control computer 32 may be provided with communication link 38 and an independent communication link 50 for redundancy purposes. Control computers 34 and 36 may be provided with similar redundant communication links.

Control computers 32, 34 and 38 may be any suitable computing devices. For example, the computing device may be implemented as a single special purpose integrated circuit, such as an ASIC, having a main or central processor section for overall, system-level control, and separate sections dedicated performing various different specific combinations, functions and other processes under control of the central processor section. It will be appreciated by those skilled in the art that the computing device can also be implemented using a variety of separate dedicated or programmable integrated or other electronic circuits or devices, such as hardwired electronic or logic circuits including discrete element circuits or programmable logic devices, such as PLDs, PALs, PLAs or the like. Also, the computing device can also be implemented using a suitably programmed general-purpose computer, such as a microprocessor or microcontrol, or other processor device, such as a CPU or MPU, either alone or in conjunction with one or more peripheral data and signal processing devices. In general, any device or similar devices on which a finite state machine capable of implementing the flow charts, as illustrated in the application, can be used as the control.

Referring to FIG. 3, an exemplary control computer 32 includes a processor 52, an input/output (I/O) units 54, a communication module 56 and a memory 58 that are all interconnected by a bus 55. I/O units 54 include the aforementioned analog to digital converter and other signal shaping circuits to condition signals supplied by interface 30 for use by control computer 32 and to condition signals to be supplied from control computer 32 to interface 30.

Communication module 56 includes the circuit topology and protocol necessary to communicate via communication link 38 and/or communication link 50, if used. Memory 58 includes any suitable type of memory, such as random access memory, read only memory, flash memory, and other types of memory.

Control computer 32 also includes an operating system 60, a configurator 62 and a configuration tool 64 that are stored in memory 58. Operating system 60 causes processor 52 to execute configurator 62 to communicate with host computer 22 to obtain a network address and to be configured with the use of configurator tool 64. Configurator tool 64 may be any suitable configurator tool, known presently or in the future. Configurator 62, as well as other programs, may be stored on a memory media 66 that can be used to load configurator 62 into memory 58.

Referring to FIG. 4, configurator 62 begins at step 70 upon control computer 32 being powered up. At step 72, it is determined whether control computer is newly installed, as would be the case at the time of initial installation or replacement installation. If not newly installed, configurator 62 is exited. If newly installed, step 74 reads unique electronic ID 44 from interface 30. At step 76, a request is issued to host computer 22 for assignment of a network address. The request includes unique electronic ID 44. At step 78, the assigned network address is received from host computer 22. At step 80, configuration tool 64 is caused to configure control computer 32 with configuration data that is received from host computer 22 and that is unique to the control computer connected to the connections of interface 30 that are associated with electronic ID 44. When the configuration is completed, configurator 62 is exited. The configuration data, for example, may include network address, signal scaling and operating rate. It will be apparent to those skilled in the art that the sequence order of the steps of configurator 62 can be changed without altering the scope of the disclosure. For example, step 72 can be performed at any point in the sequence order prior to step 80. It will also be apparent to those skilled in the art that configurator 62 includes one or more program instructions for each step 72, 74, 76, 78 and 80.

Referring to FIG. 5, an exemplary host computer includes a processor 102, an input/output (I/O) units 104, a communication module 106 and a memory 108 that are all interconnected by a bus 105. I/O units 104 include, for example, a keyboard, mouse, display and printer. It will be apparent to those skilled in the art that host computer 22 may be one of several host computers configured to control and monitor process or machine 28 via channels 24 and 26.

Communication module 106 includes the circuit topology and protocol necessary to communicate via communication link 38 and/or communication link 50, if used. Memory 108 includes any suitable type of memory, such as random access memory, read only memory, flash memory, and other types of memory.

Host computer 22 also includes an operating system 110, a configurator 112 and a configuration tool 114 that are stored in memory 108. Operating system 110 causes processor 102 to execute configurator 112 to communicate with host processor 22 to obtain a network address and to be configured with the use of configurator tool 114. Configurator tool 114 may be any suitable configurator tool, known presently or in the future. Configurator 112, as well as other programs, may be stored on a memory media 116 that can be used to load configurator 112 into memory 108. Configurator 62 could also be stored in memory media 116, loaded into memory 108 and then downloaded into memory 58 of control computers 32, 34 and 36.

Referring to FIG. 6, configurator 112 at step 120 receives a request from control computer 32 for a network address. The network address is assigned at step 122 and the relationship between the electronic ID of the requestor, the network address and the configuration data is stored. At step 124, the network address is sent to the requestor. At step 126 the configurator tool 114 is used to download to control computer 32 configuration data that is unique to the electronic ID of the requestor. It will be apparent to those skilled in the art that configurator 112 includes one or more program instructions for each step 120, 122, 124 and 126.

It should also be noted that the terms “first”, “second”, “third”, “upper”, “lower”, and the like may be used herein to modify various elements. These modifiers do not imply a spatial, sequential, or hierarchical order to the modified elements unless specifically stated.

While the present invention has been described with reference to one or more exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the present invention. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the disclosure without departing from the scope thereof. Therefore, it is intended that the present invention not be limited to the particular embodiment(s) disclosed as the best mode contemplated for carrying out this invention, but that the invention will include all embodiments falling within the scope of the appended claims. 

1. A method for configuring a first computer comprising: obtaining a location identifier from an interface that is connected to said first computer; providing said location identifier to a second computer; and configuring said first computer with configuration data provided by said second computer, wherein said configuration data includes a network address for said first computer that is related to said location identifier.
 2. The method of claim 1, wherein said obtaining step is automatically performed in response to said first computer being powered up.
 3. The method of claim 1, wherein said first computer is a replacement computer for a failed computer that was associated with said location identifier.
 4. The method of claim 3, wherein said configuration data is substantially identical to a configuration data of said failed computer.
 5. The method of claim 3, wherein said replacement computer, said second computer and said interface are connected in a system that monitors and/or controls a process or one or more machines, and wherein a redundant first computer carries on said monitoring and controlling while said failed computer is being replaced by said replacement computer and said replacement computer is being configured.
 6. The method of claim 1, wherein said first and second computers communicate via a network selected from the group consisting of: single link and two or more links.
 7. The method of claim 1, further comprising: obtaining a second location identifier from said interface for at least one additional first computer that is connected to said interface; providing said second location identifier to said second computer; and receiving additional configuration data for said additional first computer, wherein said additional configuration data includes an additional network address for said second computer that is related to said second location identifier.
 8. The method of claim 7, wherein said location identifier and said additional location identifier are unique to first and second connections of said interface to which said first computer and said additional first computer are connected, respectively.
 9. A method for configuring a control computer, said method comprising: assigning a network address to said control computer based on a location identifier of a connection of said control computer to an interface with a controlled and/or monitored process or machinery; saving a relationship of said location identifier with said network and a configuration data; and providing said configuration data to said control computer.
 10. The method of claim 9, wherein said control computer is a replacement computer for a failed computer that was associated with said location identifier.
 11. The method of claim 10, wherein said configuration data is substantially identical to a configuration data of said failed computer.
 12. The method of claim 11, wherein a redundant control computer carries on said monitoring and controlling while said failed computer is being replaced by said replacement computer and said replacement computer is being configured.
 13. The method of claim 9, wherein said host computer includes a communication unit that has the capability to communicate with said control computer via a network selected from the group consisting of: single link and two or more links.
 14. The method of claim 9, further comprising: assigning a second network address to said additional control computer based on a second location identifier of a connection of said additional control computer to said interface; saving a relationship of said second location identifier with said network and an additional configuration data; and providing said additional configuration data to said additional control computer.
 15. The method of claim 14, wherein said location identifier and said additional location identifier are unique to first and second connections of said interface to which said control computer and said additional control computer are connected, respectively.
 16. A control computer for a control system that includes a host computer and an interface arranged to control a process or one or more machines, said control computer comprising: at least a first program instruction that causes a processor of said control computer to obtain a location identifier from said interface; at least a second program instruction that causes said processor to provide said location identifier to said host computer; and at least a third program instruction that causes said processor to configure said control computer with configuration data provided by said host computer, wherein said configuration data includes a network address for said control computer that is related to said location identifier.
 17. The control computer of claim 16, wherein said first program instruction causes said processor to automatically obtain said location identifier in response to said control computer being powered up.
 18. The control computer of claim 16, wherein said control computer is a replacement computer for a failed computer that was associated with said location identifier.
 19. The control computer of claim 18, wherein said configuration data is substantially identical to a configuration data of said failed computer.
 20. The control computer of claim 18, wherein a redundant control computer carries on said monitoring and controlling while said failed computer is being replaced by said replacement computer and said replacement computer is being configured.
 21. The control computer of claim 16, further comprising a communications unit for communicating via a network selected from the group consisting of: single link and two or more links.
 22. A host computer for a control system that includes a control computer and an interface arranged to control a process or one or more machines, said host computer comprising: at least a first program instruction that causes a processor of said host computer to assign a network address to said control computer based on a location identifier of a connection of said control computer to said interface; at least a second program instruction that causes said processor to save a relationship of said location identifier with said network and a configuration data; and at least a third program instruction that causes said processor to provide said configuration data to said control computer.
 23. The host computer of claim 22, wherein said control computer is a replacement computer for a failed computer that was associated with said location identifier.
 24. The host computer of claim 23, wherein said configuration data is substantially identical to a configuration data of said failed computer.
 25. The host computer of claim 24, wherein a redundant control computer carries on said monitoring and controlling while said failed computer is being replaced by said replacement computer and said replacement computer is being configured.
 26. The host computer of claim 22, further comprising a communication unit that has the capability to communicate with said control computer via a network selected from the group consisting of: single link and two or more links.
 27. The host computer of claim 22, further comprising: at least a fourth program instruction that causes said processor to assign a second network address to an additional control computer based on a second location identifier of a connection of said additional control computer to said interface; at least a fourth program instruction that causes said processor to save a relationship of said second location identifier with said network and an additional configuration data; and at least a fifth program instruction that causes said processor to provide said additional configuration data to said additional control computer.
 28. The host computer of claim 27, wherein said location identifier and said second location identifier are unique to first and second connections of said interface to which said control computer and said additional control computer are connected, respectively.
 29. A memory media for a control computer connected in a control system that includes a host computer and an interface arranged to control a process or one or more machines, said control computer including a processor, said memory media comprising: at least a first program instruction that causes said processor to obtain a location identifier from said interface; at least a second program instruction that causes said processor to provide said location identifier to said host computer; and at least a third program instruction that causes said processor to configure said control computer with configuration data provided by said host computer, wherein said configuration data includes a network address for said control computer that is related to said location identifier.
 30. A memory media for a host computer connected in a control system that includes a control computer and an interface arranged to control a process or one or more machines, said control computer including a processor, said memory media comprising: at least a first program instruction that causes said processor to assign a network address to said control computer based on a location identifier of a connection of said control computer to said interface; at least a second program instruction that causes said processor to save a relationship of said location identifier with said network and a configuration data; and at least a third program instruction that causes said processor to provide said configuration data to said control computer. 